using System.Collections.Generic;

namespace ClearSpringNet.Stream
{
    public interface ITopK<T>
    {
        bool offer(T element);
    
        /// <summary>
        /// @param k
        /// @return top k elements offered (may be an approximation)
        /// </summary>
        /// <param name="k"></param>
        /// <returns></returns>
        List<T> peek(int k); 
    }
}